//
//  UIImage+Extension.swift
//  Weibo02
//
//  Created by teacher on 16/4/25.
//  Copyright © 2016年 teacher. All rights reserved.
//

import UIKit


extension UIImage {
    
    func scaleToWidth(width: CGFloat) -> UIImage {
        // 1200 400
        // 600 200
        
        if self.size.width < width {
            return self
        }
        
        let height = width/self.size.width * self.size.height
        
        let rect = CGRect(x: 0, y: 0, width: width, height: height)
        
        // 1. 开启指定大小的上下文
        UIGraphicsBeginImageContext(rect.size)
        
        // 2. 画 （将图片的全部内容画到图开上下文中的指定rect）
        self.drawInRect(rect)
        
        // 3. 取
        let result = UIGraphicsGetImageFromCurrentImageContext()
        
        // 4. 关
        UIGraphicsEndImageContext()
        
        // 5. 返回数据
        return result
    }

    
    /// 截图
    class func getScreenShot() -> UIImage {
        
        let window = UIApplication.sharedApplication().keyWindow!
        
        let rect = window.frame
        
        // 1. 开启图形上下文
        // 参数3： 传入0，代表是屏幕真实大小截图，传1的话，以点坐标的大小
        UIGraphicsBeginImageContextWithOptions(rect.size, false, 1)
        
        // 2. 将屏幕的内容渲染到上下文中
        window.drawViewHierarchyInRect(rect, afterScreenUpdates: true)
        
        // 3. 获取图片
        let image = UIGraphicsGetImageFromCurrentImageContext()
        
        // 4. 关闭上下文
        UIGraphicsEndImageContext()
        
        // 5. 返回图片
        return image
    }
    
    
}
